//****************************************************************************
//  PP8_5.java   Authro: Tang Caimimg
//
//  计算并输出一组整数x1 - xn的平均值和标准方差。输入不超过50个值。
//  以浮点数计算平均值（mean）和标准方差（sd）。
//****************************************************************************

import java.util.Scanner;

public class PP8_5
{
   public static void main(String[] args)
   {
      int[] nums = new int[50];
      double[] list = new double[50];

      String another = "y";
      Scanner scan = new Scanner(System.in);

      int num, index=0, sum = 0;  //  输入数，索引值，总和
      double average = 0.0; //  平均数
      double sdsum = 0.0;  //  总体标准偏差
      double sd = 0.0;  // 标准方差
      while (index < nums.length)
      {
          System.out.println("请输入任意个数x的值（最多不超过50个;输入0时将无法再输入值,求值时0不参与运算：");
          num = scan.nextInt();

          nums[index] = num;
          index++;

          if (num == 0)
          {
              index--;
              break;
          }
      }

      if (nums.length !=0)
      {
         for (int n : nums)
         {
            sum += n;
            average = (double) sum / index;
         }

         System.out.println("这几个数的平均值为："  + average);

         for (int l = 0; l < index; l++)
         {
             list[l] = Math.pow(nums[l]-average,2);
             sdsum += list[l];
         }

         sd = Math.sqrt(sdsum);
         System.out.println("这几个数的方差为：" + sd);
      }
   }
}
